/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Mail;

import java.io.Serializable;
import java.util.ArrayList;

/**
 *
 * @author fabio
 */
public class ListaUsuarios implements Serializable {

    private ArrayList<String> usuarios;

    public ListaUsuarios() {
        usuarios = new ArrayList<>();
    }

    public ListaUsuarios(ArrayList<String> usuarios) {
        this.usuarios = usuarios;
    }

    /**
     * Agrega al usuario a la lista de usuarios del servidor
     *
     * @param user
     */
    public void agregarUsuario(String user) {
        usuarios.add(user);
    }

    /**
     * Busca al usuario en la posicion deseada
     *
     * @param index posicion a buscar
     * @return el nombre del usuario
     */
    public String obtenerUsuario(int index) {
        String usuario = usuarios.get(index);
        return usuario;
    }

    /**
     * Cantidad de usuarios registrados
     *
     * @return
     */
    public int Longitud() {
        return usuarios.size();
    }

    /**
     * Recupera todos los usuarios registrados en el servidor
     *
     * @return array de usuarios
     */
    public String[] obtenerUsuarios() {
        String[] listaUsuarios = new String[usuarios.size()];
        for (int i = 0; i < usuarios.size(); i++) {
            listaUsuarios[i] = usuarios.get(i);
        }
        return listaUsuarios;
    }

    /**
     * Metodo que elimina al usuario de la lista
     *
     * @param user
     */
    public void Delete(String user) {
        usuarios.remove(user);
    }

    /**
     * Verifica si existe el usuario en la lista
     *
     * @param sUser
     * @return true si existe el usuario registrado, caso contrario false
     */
    public boolean Existe(String sUser) {
        return usuarios.contains(sUser);
    }
}
